﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace Com.JunCaiSoft.Tax.Entity
{
    /// <summary>
    /// 应税劳务或商品
    /// </summary>
    public class TaxGoods
    {
        /// <summary>
        /// 劳务或商品Id
        /// </summary>
        public virtual Guid Id { get; set; }
        /// <summary>
        /// 商品序号（Xh）
        /// </summary>
        public virtual Int32 Num { get; set; }
        /// <summary>
        /// 商品或劳务名称
        /// </summary>
        public virtual String Name { get; set; }
        /// <summary>
        /// 规格型号（40字节）
        /// </summary>
        public virtual String GoodsType { get; set; }
        /// <summary>
        /// 计量单位（32字节）
        /// </summary>
        public virtual String Unit { get; set; }
        /// <summary>
        /// 商品编码(19字节)（必输项）
        /// </summary>
        public virtual String GoodsCode { get; set; }
        /// <summary>
        /// 企业商品编码（20字节）
        /// </summary>
        public virtual String EnterpriseGoodsCode { get; set; }
        /// <summary>
        /// 是否使用优惠政策标识0：不使用，1：使用（1字节）
        /// </summary>
        public virtual String Syyhzcbz { get; set; }
        /// <summary>
        /// 零税率标识   空：非零税率，0：出口退税，1：免税，2：不征收，3普通零税率（1字节）
        /// </summary>
        public virtual String Lslbz { get; set; }
        /// <summary>
        /// 优惠政策说明（50字节）
        /// </summary>
        public virtual String Yhzcsm { get; set; }
        /// <summary>
        /// 单价（中外合作油气田（原海洋石油）5%税率，单价为含税单价）(dj)
        /// </summary>
        public virtual Double Price { get; set; }
        /// <summary>
        /// 数量(sl)
        /// </summary>
        public virtual Int32 Quantity { get; set; }
        /// <summary>
        /// 金额（金额，当金额为负数时为折扣行）(je)
        /// </summary>
        public virtual Double Amount { get; set; }
        /// <summary>
        /// 税率(slv)
        /// </summary>
        public virtual Double TaxRate { get; set; }
        /// <summary>
        /// 扣除额（扣除额，用于差额税计算）（kce)
        /// </summary>
        public virtual Double DeductionAmount { get; set; }
    }
}
